The invention is related to computer graphics and, in particular, a user interface using computer graphics in various applications such as Computer-Aided-Design (CAD), for example, for performing a number of operations on a display screen.
A user interface provides, among other things, an interface between a computer user and an application program executed via an operating system of the computer. In the absence of a user interface, the computer user has to learn application program commands and/or operating system commands which often require some technical expertise and knowledge. Instead of entering line commands to run an application program, to add a peripheral device, to activate a "Web" browser to connect to the Internet's World Wide Web, etc., the user interface allows even a computer novice to carry out these and other operations on the computer with ease and simplicity.
It is well known that via the user interface the user can, for example, view, manipulate, etc. images and graphical objects on a display screen via an input device such a mouse, light pen, keyboard, joystick, etc. coupled to a computer. Various operations associated with the images and objects are available to the user. For example, by selecting ("clicking" on) a particular object ("icon") on the screen, the user may start "running" an application program, change a screen or a set-up configuration of the computer, manage files in various directories and sub-directories, etc. One of the operations that the user interface of an application program with graphical images may provide is a so-called "pan" or "panning" operation which is explained hereinbelow.
FIG. 1 shows a graphical universe 100 that is much larger than a display screen 102 of a computer monitor, television set, etc. The entire universe may be available to the user for arranging, for example, various images/objects 104, 106, 108, 110, 112, 114, 116, 118 (as represented by icons) corresponding to application programs, images, files, etc. At any particular point in time, however, the user can perform operations only on a portion of the universe displayed on the display screen 102. Such portion of the universe, a so-called graphical space 122(a), as defined by the display screen 102, is available to the user for viewing and performing various operations.
To view another portion of the universe 100, for example, to the right of the currently displayed graphical space 122(a), the user typically moves a cursor 120 via an input device (not shown) to the right edge of the display screen 102 as shown by a first dashed arrow in FIG. 1. The user then "drags" the cursor 120 on the display screen 102 from right to left (as shown by a second dashed arrow), and another portion 122(b) of the universe 100 can be viewed on the display screen 102 as shown in FIG. 2. Thus, the panning operation is performed. In particular, to pan to the right for example, it is as if the user "grabs" the surface of a universe using the cursor as the "grabbing" tool and moves the universe to the left while the display screen remains stationary. As a result of the panning operation, the screen that may be thought of as a "porthole" displays another portion of the universe for user manipulation.
The above-described conventional panning of the images/objects 104, 106, 108, 110, 112, 114, 116, 118 on the display screen 102 entails several drawbacks. In particular, the user cannot perform the panning operation continuously. If, for example, the user wants to move diagonally from the upper right-hand corner to the lower left-hand corner of the universe, he has to grab the surface of the universe many times. Depending on a preselected resolution for the moving operation, the user pans across the universe incrementally. Among other things, this operation is inconvenient and time consuming.
Further, the speed of the conventional panning operation is dependent on the movement of the input device such as a mouse. For example, if the slow panning operation is required, the user has to move the mouse slowly; and in the fast panning operation, quick movements of the mouse have to be carried out by the user. These operations are also inconvenient and lack precision and control.
A need therefore exists for a user interface with graphics containing features that overcome the above disadvantages.